﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.Sql;

namespace sgsBase
{
	[Serializable]
	public class DbUsrUser : DbObject
	{
		public DbUsrUser()
			: base()
		{
			Table = "dbo.usr_users";
			Database = "sgs_core";
			Columns.AddColumn("user_id", SqlDbType.Int, true, true);
			Columns.AddColumn("first_name", SqlDbType.VarChar);
			Columns.AddColumn("last_name", SqlDbType.VarChar);
			Columns.AddColumn("email", SqlDbType.VarChar);
			Columns.AddColumn("descr", SqlDbType.VarChar);
			Columns.AddColumn("login_id", SqlDbType.VarChar);
			Columns.AddColumn("login_pass", SqlDbType.VarChar);
			Columns.AddColumn("last_login", SqlDbType.DateTime);
			Columns.AddColumn("user_type", SqlDbType.Int);
			Columns.AddColumn("status", SqlDbType.Int);
			Columns.AddColumn("dt_touch", SqlDbType.DateTime);
			Columns.AddColumn("logged_in", SqlDbType.Int);
			Columns.AddColumn("dt_created", SqlDbType.DateTime);
			Columns.AddColumn("created_by_id", SqlDbType.Int);
			Columns.AddColumn("last_edit_by_id", SqlDbType.Int);
			Columns.AddColumn("hash_code", SqlDbType.VarChar);
			Columns.AddColumn("cookie_code", SqlDbType.VarChar);
		}

		#region Properties

		public int UserId
		{
			get { return Columns.IntAt(0); }
			set { Columns.SetValAt(0, value); }
		}

		public String FirstName
		{
			get { return Columns.StringAt(1); }
			set { Columns.SetValAt(1, value); }
		}

		public String LastName
		{
			get { return Columns.StringAt(2); }
			set { Columns.SetValAt(2, value); }
		}

		public String Email
		{
			get { return Columns.StringAt(3); }
			set { Columns.SetValAt(3, value); }
		}

		public String Descr
		{
			get { return Columns.StringAt(4); }
			set { Columns.SetValAt(4, value); }
		}

		public String LoginId
		{
			get { return Columns.StringAt(5); }
			set { Columns.SetValAt(5, value); }
		}

		public String LoginPass
		{
			get { return Columns.StringAt(6); }
			set { Columns.SetValAt(6, value); }
		}

		public DateTime LastLogin
		{
			get { return Columns.DateTimeTSAt(7); }
			set { Columns.SetValAt(7, value, true); }
		}

		public int UserType
		{
			get { return Columns.IntAt(8); }
			set { Columns.SetValAt(8, value); }
		}

		public int Status
		{
			get { return Columns.IntAt(9); }
			set { Columns.SetValAt(9, value); }
		}

		public DateTime DtTouch
		{
			get { return Columns.DateTimeTSAt(10); }
			set { Columns.SetValAt(10, value, true); }
		}

		public int LoggedIn
		{
			get { return Columns.IntAt(11); }
			set { Columns.SetValAt(11, value); }
		}

		public DateTime DtCreated
		{
			get { return Columns.DateTimeTSAt(12); }
			set { Columns.SetValAt(12, value, true); }
		}

		public int CreatedById
		{
			get { return Columns.IntAt(13); }
			set { Columns.SetValAt(13, value); }
		}

		public int LastEditById
		{
			get { return Columns.IntAt(14); }
			set { Columns.SetValAt(14, value); }
		}

		public String HashCode
		{
			get { return Columns.StringAt(15); }
			set { Columns.SetValAt(15, value); }
		}

		public String CookieCode
		{
			get { return Columns.StringAt(16); }
			set { Columns.SetValAt(16, value); }
		}

		#endregion
	}
}
